<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body></body>
  <script>
    /*
                  async \ await   只是一个语法糖
          1.异步回调 callback hell
          2.Promise then catch 链式调用，但也是基于回调函数
          3.async/await 是同步语法，彻底消灭回调函数

          */
    /* 案例一， 1.async函数返回的是promise对象，如果用await调用的话，返回的是async函数的返回值
                 2.await 关键字只能用在 async 函数中，如果用在普通函数中，会报错。


      */
    /* 案例一 */
    async function fn() {
      return "fn函数";
    }

    (async function () {
      let a = fn();
      let b = await fn();
      console.log(a, b); //
    })();
    /* 案例二 */
    /*  async function fn(){
          return 123
      }
    ( function(){
        let res1 = await fn() //会报错
        console.log(res1,'res1');

    })() */
  </script>
</html>
